package com.isoftstone.service;

import com.isoftstone.pojo.Occupancy;
import com.isoftstone.pojo.PageResult;
import com.isoftstone.pojo.dto.AssignDormitoryDTO;
import com.isoftstone.pojo.dto.OccupancyQueryDTO;
import com.isoftstone.util.Result;

import java.util.List;


public interface OccupancyService {
    // 分配宿舍
    Result<PageResult<Occupancy>> queryByConditions(OccupancyQueryDTO queryDTO);

    // 分配宿舍
    Result<?> assignDormitory(AssignDormitoryDTO dto);

    // 调换宿舍
    Result<?> changeDormitory(AssignDormitoryDTO dto);

    // 单个退宿
    Result<?> checkOut(Integer occupancyId);

    // 批量退宿
    Result<?> batchCheckOut(List<Integer> ids);

    // 获取学生入住信息列表
    Result<List<Occupancy>> getOccupancyList();
    /**
     * 删除入住记录（批量）
     */
    Result<?> deleteRecords(List<Integer> ids);

    Result<?> checkCurrentOccupancy(String studentNumber);
}